package com.xbongbong.admin.service;

import com.xbongbong.admin.pojo.dto.RaidersCorpCountDTO;
import com.xbongbong.admin.pojo.dto.RaidersCorpCountListDTO;
import com.xbongbong.admin.pojo.dto.RaidersCorpScoreDTO;
import com.xbongbong.admin.pojo.dto.RaidersScoreDTO;
import com.xbongbong.admin.pojo.dto.RaidersStatusGetDTO;
import com.xbongbong.admin.pojo.vo.RaidersCorpCountListVO;
import com.xbongbong.admin.pojo.vo.RaidersCorpCountVO;
import com.xbongbong.admin.pojo.vo.RaidersCorpScoreVO;
import com.xbongbong.admin.pojo.vo.RaidersScoreVO;
import com.xbongbong.admin.pojo.vo.RaidersStatusGetVO;
import com.xbongbong.paas.toolbox.exception.XbbException;

/**
 * 攻略绑定公司相关
 *
 * @author 徐俊杰
 * @date 2019/9/25 20:30
 * @since v1.0
 */
public interface RaidersCorpService {
    /**
     * 攻略总分
     *
     * @param raidersCorpScoreDTO 公司攻略总分DTO
     * @return com.xbongbong.admin.pojo.vo.RaidersCorpScoreVO
     * @throws XbbException 异常
     * @author 徐俊杰
     * @date 2019/9/26 14:44
     * @since v1.0
     */
    RaidersCorpScoreVO score(RaidersCorpScoreDTO raidersCorpScoreDTO) throws XbbException;

    /**
     * 攻略关联公司数列表：即攻略首页轮播图
     *
     * @param raidersCorpCountListDTO 攻略关联公司数列表DTO
     * @return com.xbongbong.admin.pojo.vo.RaidersCorpCountListVO
     * @throws XbbException 异常
     * @author 徐俊杰
     * @date 2019/9/27 10:03
     * @since v1.0
     */
    RaidersCorpCountListVO countList(RaidersCorpCountListDTO raidersCorpCountListDTO) throws XbbException;

    /**
     * 攻略关联公司数
     *
     * @param raidersCorpCountDTO 攻略关联公司数DTO
     * @return com.xbongbong.admin.pojo.vo.RaidersCorpCountVO
     * @throws XbbException 异常
     * @author 徐俊杰
     * @date 2019/9/27 14:16
     * @since v1.0
     */
    RaidersCorpCountVO count(RaidersCorpCountDTO raidersCorpCountDTO) throws XbbException;

    /**
     * 攻略得分
     *
     * @param raidersScoreDTO 攻略得分DTO
     * @return com.xbongbong.admin.pojo.vo.RaidersScoreVO
     * @throws XbbException 异常
     * @author 徐俊杰
     * @date 2019/9/27 15:29
     * @since v1.0
     */
    RaidersScoreVO getScore(RaidersScoreDTO raidersScoreDTO) throws XbbException;

    /**
     * 攻略首页卡片状态
     *
     * @param raidersStatusGetDTO 攻略首页卡片状态DTO
     * @return com.xbongbong.admin.pojo.vo.RaidersIndexCardGetVO
     * @throws XbbException 异常
     * @author 徐俊杰
     * @date 2019/10/24 10:18
     * @since v1.0
     */
    RaidersStatusGetVO indexCardGet(RaidersStatusGetDTO raidersStatusGetDTO) throws XbbException;
}
